Uczeń:
1. posługuje się prostymi typami danych
2. posługuje się złożonymi typami danych
3. stosuje metody rozwiązywania problemów za pomocą algorytmów
1) projektuje algorytmy za pomocą różnych metod: schematów blokowych, listy kroków, drzew decyzyjnych, pseudokodu
2) charakteryzuje algorytmy iteracyjne, tekstowe i szyfrowania, tablicowe
3) charakteryzuje algorytmy rekurencyjne

4. stosuje algorytmy sortowania i wyszukiwania
1) charakteryzuje typy sortowania i ich złożoność obliczeniową
2) stosuje różne typy sortowania np.: bąbelkowe, zachłanne, przez wstawianie, szybkie, metodą dziel i zwyciężaj oraz inne
3) stosuje algorytmy wyszukiwania dla tablic, list, kolejek, stosów

5. dobiera narzędzia i metodologie do planowania i zarządzania projektem
6. projektuje aplikację
1) analizuje wymagania klienta i tworzy zgodny z nimi projekt
2) tłumaczy wymagania klienta na specyfikację techniczną dla zespołu programistów
3) identyfikuje elementy interfejsu użytkownika, np.: okna, dialogi, kontrolki, formularze, paski narzędziowe, widgety
4) projektuje interfejs użytkownika i wygląd aplikacji
5) dostosowuje interfejs do różnych platform
6) projektuje aplikacje w różnych paradygmatach programowania: strukturalnym, obiektowym
7) projektuje aplikacje opartą na architekturze klient-serwer
8) projektuje struktury danych dla aplikacji
9) projektuje funkcjonalność aplikacji
10) planuje system zabezpieczeń aplikacji

7. planuje przedsięwzięcie programistyczne
1) określa cel projektu
2) określa fazy realizacji projektu
3) charakteryzuje cykl życia projektu informatycznego i jego poszczególne etapy
4) określa zasoby ludzkie oraz ramy czasowe
5) planuje etapy tworzenia aplikacji
6) korzysta z metodologii zarządzania projektem: model kaskadowy (waterfall), model przyrostowy, model prototypowy, metodyki zwinne (Agile oraz przynajmniej jedną z: Scrum, Lean, Kanban)
7) dobiera optymalną metodologię zarządzania projektem
8) organizuje prace projektowe
9) stosuje harmonogram czynności w celu efektywnego osiągnięcia celów

8. stosuje wzorce projektowe
9. stosuje zagadnienia prawa autorskiego w dziedzinie programowania